bdf94768c2d2061ca6f244ac02a4595aff1e123c,src/edu/stanford/nlp/graph/DirectedMultiGraph.java,DirectedMultiGraph,DirectedMultiGraph,#DirectedMultiGraph#,30
Before Change
}
public DirectedMultiGraph(DirectedMultiGraph<V,E> graph) {
outgoingEdges = Generics.newHashMap(graph.outgoingEdges);
incomingEdges = Generics.newHashMap(graph.incomingEdges);
}
/**
After Change
* @param graph The graph to copy into this object.
*/
public DirectedMultiGraph(DirectedMultiGraph<V,E> graph) {
outgoingEdges = Generics.newHashMap();
incomingEdges = Generics.newHashMap();
for (Map.Entry<V, Map<V, List<E>>> map : graph.outgoingEdges.entrySet()) {
Map<V, List<E>> edgesCopy = Generics.newHashMap();
for (Map.Entry<V, List<E>> entry : map.getValue().entrySet()) {
edgesCopy.put(entry.getKey(), Generics.newArrayList(entry.getValue()));
}
this.outgoingEdges.put(map.getKey(), edgesCopy);
}
for (Map.Entry<V, Map<V, List<E>>> map : graph.incomingEdges.entrySet()) {
Map<V, List<E>> edgesCopy = Generics.newHashMap();
for (Map.Entry<V, List<E>> entry : map.getValue().entrySet()) {
edgesCopy.put(entry.getKey(), Generics.newArrayList(entry.getValue()));
}
this.incomingEdges.put(map.getKey(), edgesCopy);
}
}